//
//  NetWorkingMangerFactory.h
//  YiJuZhangShou
//
//  Created by 冷悦 on 16/3/6.
//  Copyright © 2016年 Uranus. All rights reserved.
//
#import "CommonFailureCallback.h"
#import "NetworkingBaseInterceptor.h"
#import "NetworkingResolveInterceptor.h"
#import "NetworkingNormalManager.h"
#import "NetworkingAESManager.h"
#import "NetworkingAESConfigInterceptor.h"
#import "NetworkingSHA256ConfigInterceptor.h"
#import "HeaderUtil.h"
#import "NetworkingBaseManager.h"
#import "NetworkingAESAndSHAConfigInterceptor.h"

@interface NetworkingManagerFactory : NSObject

/**加载基础网络请求管理器*/
+ (NetworkingBaseManager *)generateNormalManager;
/**加载带table刷新头失败回调的基础网络请求管理器*/
+ (NetworkingBaseManager *)generateNormalManagerWithRefreshFailureCallBackWithTableView:(UITableView *)tableView;
/**记载带collectionView刷新头失败回调的基础网络请求管理器*/
+ (NetworkingBaseManager *)generateNormalManagerWithRefreshFailureCallBackWithCollectionView:(UICollectionView *)collectionView;

/**加载能-处理返回iv的头请求-的网络请求管理器*/
+ (NetworkingBaseManager *)generateResolveManager;
/**加载-有iv（AES）头请求-的网络请求管理器*/
+ (NetworkingAESManager *)generateAESManager:(NSString *)iv;

/**加载-有SHA256加密的头请求的网络请求管理器*/
+ (NetworkingBaseManager *)generateSHA256Manager;

/**加载-有SHA256和iv(AES)头请求-的网络请求管理器*/
+ (NetworkingAESManager *)generateAESAndSHA256Manager:(NSString *)iv;

/**加载-有SHA256加密的头请求的带table刷新头失败回调的网络请求管理器*/
+ (NetworkingBaseManager *)generateSHA256ManagerWithRefreshFailureCallBackWithTableView:(UITableView *)tableView;

@end
